﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace FrbaBus.GenerarViaje
{
    public partial class FormViajeMicro : Form
    {
        public long microSeleccionado { get; set; }

        public FormViajeMicro()
        {
            InitializeComponent();
        }

        private void FormViajeMicro_Load(object sender, EventArgs e)
        {
            grillaMicroViaje.Columns.Add("mic_codigo", "CODIGO");
            grillaMicroViaje.Columns.Add("mic_patente", "PATENTE");
            grillaMicroViaje.Columns.Add("marc_nombre", "MARCA");
            grillaMicroViaje.Columns.Add("mic_modelo", "MODELO");
            grillaMicroViaje.Columns.Add("serv_nombre", "SERVICIO");

            grillaMicroViaje.Columns.Add("mic_cant_pisos", "PISOS");
            grillaMicroViaje.Columns.Add("mic_cant_butacas", "BUTACAS");
            grillaMicroViaje.Columns.Add("mic_kg_disponibles", "KGS DISPONIBLES");

            grillaMicroViaje.Columns.Add("mic_fecha_alta", "ALTA");
            grillaMicroViaje.Columns.Add("mic_fecha_baja_definitiva", "BAJA");
            grillaMicroViaje.Columns.Add("mic_habilitado", "HABILITADO");
            grillaMicroViaje.Columns.Add("mic_eliminado", "ELIMINADO");


            Cargar_Grilla(0);
        }

        private void btnMicroViaje_Click(object sender, EventArgs e)
        {
            microSeleccionado = Convert.ToInt64(grillaMicroViaje.SelectedRows[0].Cells[0].Value);
            
            this.Hide();
        }

        private void Cargar_Grilla(int accion)
        {
            //accion : 0: busqueda o recarga del formulario , 1: limpiar formulario

            grillaMicroViaje.Rows.Clear();

            string query;

            query = " SELECT mic_codigo, mic_patente, marc_nombre, mic_modelo, serv_nombre, mic_cant_pisos, mic_cant_butacas, mic_kg_disponibles, mic_fecha_alta, mic_fecha_baja_definitiva, mic_habilitado, mic_eliminado ";
            query += " FROM THE_BEST_IAS.micros MI ";
            query += " INNER JOIN THE_BEST_IAS.marcas MA ON MA.marc_codigo=MI.marc_codigo ";
            query += " INNER JOIN THE_BEST_IAS.servicios SE ON SE.serv_codigo=MI.serv_codigo ";
            query += " WHERE MI.mic_habilitado=1 AND MI.mic_eliminado=0";

            query += " ORDER BY 1";

            SqlDataReader dr = DbHelper.ExecuteQuery(query);

            if (dr.HasRows)
            {
                while (dr.Read())
                {
                    grillaMicroViaje.Rows.Add(new object[] { 
                           dr["mic_codigo"].ToString().Trim(), 
                           dr["mic_patente"].ToString().Trim(), 
                           dr["marc_nombre"].ToString().Trim(), 
                           dr["mic_modelo"].ToString().Trim(), 
                           dr["serv_nombre"].ToString().Trim(), 
                           dr["mic_cant_pisos"].ToString().Trim(),
                           dr["mic_cant_butacas"].ToString().Trim(),
                           dr["mic_kg_disponibles"].ToString().Trim(),
                           dr["mic_fecha_alta"].ToString().Trim(),
                           dr["mic_fecha_baja_definitiva"].ToString().Trim(),
                           dr["mic_habilitado"].ToString().Trim(),
                           dr["mic_eliminado"].ToString().Trim(),

                         });
                }
            }
            else
            {
                if (accion == 0)
                {
                    MessageBox.Show("No se encontraron micros para su búsqueda", "INFORMACION");
                }
            }

        }
    }
}
